/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package flightlifter;

import GUI.GUILayout;
import GUI.VerticalLayout;
import java.util.Vector;

/**
 *
 * @author Matt
 */
public abstract class Node implements Selectable{

    protected int selected;

    abstract public void physics();
    abstract public void render(int mode);

    float red = 0,green = 0,blue = 0;


    private VerticalLayout infoBlock;
    //this method says whether the passed in Point is necesary for this
    //object to survive.  Used when the editor wants to delete a point.
    public abstract boolean dependsOn(Point p);


    public void setSelected(int selected) {
        this.selected = selected;
    }

    public int getSelected() {
        return selected;
    }

    abstract public String pickle(Vector <Node> nodes);

    public VerticalLayout getInfo(){
        return infoBlock;
    }


    public void populateInfoBox(GUILayout layout){

    }

}
